import { ObservablePromiseModel } from 'bggood-store-utils';
import MessagePlugin from './message';
import LoadingPlugin from "./loading";
import StatePlugin from "./state";
const InitPlugin={
    install:function(Vue,options){
        options=options||{};
        options.obStateType=options.obStateType||ObservablePromiseModel;
        Vue.use(MessagePlugin);
        Vue.use(LoadingPlugin,{obStateType:options.obStateType})
        Vue.use(StatePlugin,{obStateType:options.obStateType});
        Vue.mixin({
          props:{
            $stateBase:Object
          }
        });
    }
}
export default InitPlugin